package com.shensi.adminCollect.service.station;

import com.shensi.common.core.domain.AjaxResult;
import com.shensi.adminCollect.domain.station.PayWay;
import com.shensi.adminCollect.domain.station.Station;
import com.shensi.adminCollect.domain.station.dto.AutoPayWayDto;
import com.shensi.adminCollect.domain.station.dto.AutoPayWayInfo;
import com.shensi.adminCollect.domain.station.dto.RateSettingDto;

import java.util.List;

/**
 * 油品信息Service接口
 * 
 * @author qujia
 * @date 2020-12-08
 */
public interface IPayWayService
{
    /**
     * 查询支付方式信息
     *
     * @param payWayId 支付方式信息
     * @return 油罐信息
     */
    public PayWay selectPayWayById(Long payWayId);

    public List<PayWay> selectPayWayByIds(Long[] payWayIds);

    public int setShowPayWayIds(Station station);
    /**
     * 查询支付方式信息列表
     *
     * @param payWay 支付方式信息
     * @return 支付方式信息集合
     */
    public List<PayWay> selectPayWayList(PayWay payWay);

    /**
     * 新增支付方式信息payWayService
     *
     * @param payWay 支付方式信息
     * @return 结果
     */
    public int insertPayWay(PayWay payWay);

    /**
     * 修改支付方式信息
     *
     * @param payWay 支付方式信息
     * @return 结果
     */
    public int updatePayWay(PayWay payWay);

    /**
     * 新增自动切换
     *
     * @param autoPayWayDto 支付方式信息
     * @return 结果
     */
    public AjaxResult insertAutoPayWay(AutoPayWayDto autoPayWayDto);

    public List<AutoPayWayDto> autoPayWayList(AutoPayWayDto autoPayWayDto);


    public int updateAutoPayWay(AutoPayWayDto autoPayWayDto);

    public int deleteAutoPayWay(Long id);

    public List<AutoPayWayInfo> getAutoPayWayInfo(Long id);


    public AjaxResult setMnoAllRate(RateSettingDto rateSettingDto);

    public RateSettingDto selectMnoAllRate(String mno);

    public void selectMnoAllRateList();

    public List<PayWay> getMnoByEnterpriseId(Long id);

    public  AjaxResult getSXFMnoServiceCharge(String mno);

    public void selectAutoPayWay(int wayPayWay,Long stationId,String oilGun);


    /**
     * 删除支付信息信息
     *
     * @param payWayId 支付信息ID
     * @return 结果
     */
    public int deletePayWayById(Long payWayId);

    /**
     * 批量删除支付配置信息
     *
     * @param payWayIds 需要删除的数据ID
     * @return 结果
     */
    public int deletePayWayByIds(Long[] payWayIds);
}
